package com.itheima.config;

import com.itheima.service.ServiceA;
import lombok.extern.slf4j.Slf4j;
import org.dom4j.io.SAXReader;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

/**
 * 配置类: 一般用于加载第三方的Bean与注册拦截器等
 * 管理第三方Bean
 */
@Slf4j
@Configuration  // 生命该类是配置类, 并交给IOC容器管理
public class CommonConfig {

    // 可以依赖注入
    /*@Autowired
    private ServiceA serviceA;*/

    @Bean // 作用:程序启动的时候, 会将方法的返回值对象交给IOC容器管理
    //bean的名字默认是方法名, 可以通过name|value属性设置bean的名字
    public SAXReader saxReader(ServiceA serviceA) { // 程序在启动的时候, 形参中的Bean会自动注入
        serviceA.testA();
        log.info("SAXReader对象创建");
        return new SAXReader();
    }
}
